home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 26.zip / BS1 part 26 / Aztec C v5.2a disk 4.adf / 204inc_i.lzh / graphics / displayinfo.i < prev    next >
Text File  |  1991-03-14  |  6KB  |  204 lines

  1.     IFND    GRAPHICS_DISPLAYINFO_I
  2. GRAPHICS_DISPLAYINFO_I    SET    1
  3. **
  4. **    $Filename: graphics/displayinfo.i $
  5. **    $Release: 2.04 $
  6. **    $Revision: 37.4 $
  7. **    $Date: 91/02/12 $
  8. **
  9. **    include define file for display control registers
  10. **
  11. **    (C) Copyright 1985,1986,1987,1988,1989 Commodore-Amiga, Inc.
  12. **        All Rights Reserved
  13. **
  14.  
  15.     IFND    EXEC_TYPES_I
  16.     include 'exec/types.i'
  17.     ENDC
  18.  
  19.     IFND    GRAPHICS_GFX_I
  20.     include 'graphics/gfx.i'
  21.     ENDC
  22.  
  23.     IFND    GRAPHICS_MONITOR_I
  24.     include 'graphics/monitor.i'
  25.     ENDC
  26.  
  27.     IFND    UTILITY_TAGITEM_I
  28.     include 'utility/tagitem.i'
  29.     ENDC
  30.  
  31. * datachunk type identifiers
  32.  
  33. DTAG_DISP    equ          $80000000
  34. DTAG_DIMS    equ          $80001000
  35. DTAG_MNTR    equ          $80002000
  36. DTAG_NAME    equ          $80003000
  37.  
  38.  
  39.     STRUCTURE    QueryHeader,0
  40.     ULONG    qh_StructID    ; datachunk type identifier
  41.     ULONG    qh_DisplayID    ; copy of display record key
  42.     ULONG    qh_SkipID    ; TAG_SKIP -- see tagitems.h
  43.     ULONG    qh_Length    ; length of data in double-longwords
  44.     LABEL qh_SIZEOF
  45.  
  46.     STRUCTURE    DisplayInfo,qh_SIZEOF
  47.     UWORD    dis_NotAvailable      ; if NULL available, else see defines
  48.     ULONG    dis_PropertyFlags      ; Properties of this mode see defines
  49.     STRUCT    dis_Resolution,tpt_SIZEOF ; ticks-per-pixel X/Y
  50.     UWORD    dis_PixelSpeed          ; aproximation in nanoseconds
  51.     UWORD    dis_NumStdSprites      ; number of standard amiga sprites
  52.     UWORD    dis_PaletteRange      ; distinguishable shades available
  53.     STRUCT    dis_SpriteResolution,tpt_SIZEOF ; sprite ticks-per-pixel X/Y
  54.     STRUCT    dis_pad,4
  55.     STRUCT    dis_reserved,8          ; terminator
  56.     LABEL dis_SIZEOF
  57.  
  58. * availability
  59.  
  60. DI_AVAIL_NOCHIPS    equ    $0001
  61. DI_AVAIL_NOMONITOR    equ    $0002
  62. DI_AVAIL_NOTWITHGENLOCK    equ    $0004
  63.  
  64. * mode properties
  65.  
  66. DIPF_IS_LACE        equ    $00000001
  67. DIPF_IS_DUALPF        equ    $00000002
  68. DIPF_IS_PF2PRI        equ    $00000004
  69. DIPF_IS_HAM        equ    $00000008
  70.  
  71. DIPF_IS_ECS        equ    $00000010    ;*    note: ECS modes (SHIRES, VGA, and **
  72. *                                ;*    PRODUCTIVITY) do not support      **
  73. *                                ;*    attached sprites.          **
  74. DIPF_IS_PAL        equ    $00000020
  75. DIPF_IS_SPRITES        equ    $00000040
  76. DIPF_IS_GENLOCK        equ    $00000080
  77.  
  78. DIPF_IS_WB        equ    $00000100
  79. DIPF_IS_DRAGGABLE    equ    $00000200
  80. DIPF_IS_PANELLED    equ    $00000400
  81. DIPF_IS_BEAMSYNC    equ    $00000800
  82.  
  83. DIPF_IS_EXTRAHALFBRITE equ    $00001000
  84.  
  85.     STRUCTURE DimensionInfo,qh_SIZEOF
  86.     UWORD    dim_MaxDepth        ; log2( max number of colors
  87.     UWORD    dim_MinRasterWidth    ; minimum width in pixels
  88.     UWORD    dim_MinRasterHeight    ; minimum height in pixels
  89.     UWORD    dim_MaxRasterWidth    ; maximum width in pixels
  90.     UWORD    dim_MaxRasterHeight    ; maximum height in pixels
  91.     STRUCT    dim_Nominal,ra_SIZEOF    ; "standard" dimensions
  92.     STRUCT    dim_MaxOScan,ra_SIZEOF    ; fixed, hardware dependant
  93.     STRUCT    dim_VideoOScan,ra_SIZEOF ; fixed, hardware dependant
  94.     STRUCT    dim_TxtOScan,ra_SIZEOF    ; editable via preferences
  95.     STRUCT    dim_StdOScan,ra_SIZEOF    ; editable via preferences
  96.     STRUCT    dim_pad,14
  97.     STRUCT    dim_reserved,8        ; terminator
  98.     LABEL dim_SIZEOF
  99.  
  100.     STRUCTURE MonitorInfo,qh_SIZEOF
  101.     APTR    mtr_Mspc        ; pointer to monitor specification
  102.     STRUCT    mtr_ViewPosition,tpt_SIZEOF    ; editable via preferences
  103.     STRUCT    mtr_ViewResolution,tpt_SIZEOF    ; monitor ticks-per-pixel
  104.     STRUCT    mtr_ViewPositionRange,ra_SIZEOF    ; fixed, hardware dependant
  105.     UWORD    mtr_TotalRows        ; display height in scanlines
  106.     UWORD    mtr_TotalColorClocks    ; scanline width in 280 ns units
  107.     UWORD    mtr_MinRow        ; absolute minimum active scanline
  108.     WORD    mtr_Compatibility    ; how this coexists with others
  109.     STRUCT    mtr_pad,36
  110.     STRUCT    mtr_reserved,8        ; terminator
  111.     LABEL mtr_SIZEOF
  112.  
  113. * monitor compatibility
  114.  
  115. MCOMPAT_MIXED        equ  0    ; can share display with other MCOMPAT_MIXED
  116. MCOMPAT_SELF        equ  1    ; can share only within same monitor
  117. MCOMPAT_NOBODY        equ -1    ; only one viewport at a time
  118.  
  119. DISPLAYNAMELEN        equ 32
  120.  
  121.     STRUCTURE NameInfo,qh_SIZEOF
  122.     STRUCT    nif_Name,DISPLAYNAMELEN
  123.     STRUCT    nif_reserved,8        ; terminator
  124.     LABEL nif_SIZEOF
  125.  
  126. * DisplayInfoRecord identifiers
  127.  
  128. INVALID_ID        equ    -1
  129.  
  130. *normal identifiers
  131.  
  132. MONITOR_ID_MASK        equ    $FFFF1000
  133.  
  134. DEFAULT_MONITOR_ID    equ    $00000000
  135. NTSC_MONITOR_ID        equ    $00011000
  136. PAL_MONITOR_ID        equ    $00021000
  137.  
  138. * the following 20 composite keys are for Modes on the default Monitor
  139. * ntsc & pal "flavors" of these particular keys may be made by or'ing
  140. * the ntsc or pal MONITOR_ID with the desired MODE_KEY...
  141.  
  142. LORES_KEY        equ    $00000000 
  143. HIRES_KEY        equ    $00008000 
  144. SUPER_KEY        equ    $00008020 
  145. HAM_KEY            equ    $00000800 
  146. LORESLACE_KEY        equ    $00000004 
  147. HIRESLACE_KEY        equ    $00008004 
  148. SUPERLACE_KEY        equ    $00008024 
  149. HAMLACE_KEY        equ    $00000804 
  150. LORESDPF_KEY        equ    $00000400 
  151. HIRESDPF_KEY        equ    $00008400 
  152. SUPERDPF_KEY        equ    $00008420 
  153. LORESLACEDPF_KEY    equ    $00000404 
  154. HIRESLACEDPF_KEY    equ    $00008404 
  155. SUPERLACEDPF_KEY    equ    $00008424 
  156. LORESDPF2_KEY        equ    $00000440 
  157. HIRESDPF2_KEY        equ    $00008440 
  158. SUPERDPF2_KEY        equ    $00008460 
  159. LORESLACEDPF2_KEY    equ    $00000444 
  160. HIRESLACEDPF2_KEY    equ    $00008444 
  161. SUPERLACEDPF2_KEY    equ    $00008464 
  162. EXTRAHALFBRITE_KEY    equ    $00000080
  163. EXTRAHALFBRITELACE_KEY    equ    $00000084
  164.  
  165. * vga identifiers
  166.  
  167. VGA_MONITOR_ID        equ    $00031000 
  168.  
  169. VGAEXTRALORES_KEY    equ    $00031004 
  170. VGALORES_KEY        equ    $00039004 
  171. VGAPRODUCT_KEY         equ    $00039024 
  172. VGAHAM_KEY        equ    $00031804 
  173. VGAEXTRALORESLACE_KEY    equ    $00031005 
  174. VGALORESLACE_KEY    equ    $00039005 
  175. VGAPRODUCTLACE_KEY    equ    $00039025 
  176. VGAHAMLACE_KEY        equ    $00031805 
  177. VGAEXTRALORESDPF_KEY    equ    $00031404 
  178. VGALORESDPF_KEY        equ    $00039404 
  179. VGAPRODUCTDPF_KEY    equ    $00039424 
  180. VGAEXTRALORESLACEDPF_KEY equ    $00031405 
  181. VGALORESLACEDPF_KEY    equ    $00039405 
  182. VGAPRODUCTLACEDPF_KEY    equ    $00039425 
  183. VGAEXTRALORESDPF2_KEY    equ    $00031444 
  184. VGALORESDPF2_KEY    equ    $00039444 
  185. VGAPRODUCTDPF2_KEY    equ    $00039464 
  186. VGAEXTRALORESLACEDPF2_KEY equ    $00031445 
  187. VGALORESLACEDPF2_KEY    equ    $00039445 
  188. VGAPRODUCTLACEDPF2_KEY    equ    $00039465 
  189. VGAEXTRAHALFBRITE_KEY    equ    $00031084
  190. VGAEXTRAHALFBRITELACE_KEY equ    $00031085
  191.  
  192. * a2024 identifiers
  193.  
  194. A2024_MONITOR_ID    equ    $00041000 
  195.  
  196. A2024TENHERTZ_KEY     equ    $00041000 
  197. A2024FIFTEENHERTZ_KEY   equ    $00049000 
  198.  
  199. * prototype identifiers
  200.  
  201. PROTO_MONITOR_ID    equ    $00051000 
  202.  
  203.     ENDC    ; GRAPHICS_DISPLAYINFO_I 
  204.